home *** CD-ROM | disk | FTP | other *** search
Wrap
READCD(1) Schily's USER COMMANDS READCD(1) NNNNAAAAMMMMEEEE readcd - read or write data Compact Discs SSSSYYYYNNNNOOOOPPPPSSSSIIIISSSS rrrreeeeaaaaddddccccdddd ddddeeeevvvv====_d_e_v_i_c_e [ _o_p_t_i_o_n_s ] DDDDEEEESSSSCCCCRRRRIIIIPPPPTTTTIIIIOOOONNNN RRRReeeeaaaaddddccccdddd is used to read or write Compact Discs. The _d_e_v_i_c_e refers to _s_c_s_i_b_u_s/_t_a_r_g_e_t/_l_u_n of the drive. Com- munication on _S_u_n_O_S is done with the SCSI general driver ssssccccgggg.... Other operating systems are using a library simulation of this driver. Possible syntax is: ddddeeeevvvv==== _s_c_s_i_b_u_s,_t_a_r_g_e_t,_l_u_n or ddddeeeevvvv==== _t_a_r_g_e_t,_l_u_n. In the latter case, the drive has to be connected to the default SCSI bus of the machine. _S_c_s_i_b_u_s, _t_a_r_g_e_t and _l_u_n are integer numbers. Some operating systems or SCSI transport implementations may require to specify a filename in addition. In this case the corect syntax for the device is: ddddeeeevvvv==== _d_e_v_i_c_e_n_a_m_e:_s_c_s_i_b_u_s,_t_a_r_g_e_t, or ddddeeeevvvv==== _d_e_v_i_c_e_n_a_m_e:_t_a_r_g_e_t,_l_u_n. If the name of the device node that has been specified on such a system referres to exactly one SCSI device, a short- hand in the form ddddeeeevvvv==== _d_e_v_i_c_e_n_a_m_e:@ or ddddeeeevvvv==== _d_e_v_i_c_e_n_a_m_e:@,_l_u_n may be used instead of ddddeeeevvvv==== _d_e_v_i_c_e_n_a_m_e:_s_c_s_i_b_u_s,_t_a_r_g_e_t, To make rrrreeeeaaaaddddccccdddd portable to all UNIX platforms, the syntax ddddeeeevvvv==== _d_e_v_i_c_e_n_a_m_e:_s_c_s_i_b_u_s,_t_a_r_g_e_t, is preferred as is hides OS specific knowledge about device names from the user. A specific OS must not necessarily support a way to specify a real device file name nor a way to specify _s_c_s_i_b_u_s,_t_a_r_g_e_t,_l_u_n. _S_c_s_i_b_u_s 0 is the default SCSI bus on the machine. Watch the boot messages for more information or look into ////vvvvaaaarrrr////aaaaddddmmmm////mmmmeeeessssssssaaaaggggeeeessss for more information about the SCSI confi- guration of your machine. If you have problems to figure out what values for _s_c_s_i_b_u_s,_t_a_r_g_e_t,_l_u_n should be used, try the ----ssssccccaaaannnnbbbbuuuussss option of ccccddddrrrreeeeccccoooorrrrdddd. OOOOPPPPTTTTIIIIOOOONNNNSSSS If no options except the _d_e_v= option have been specified, rrrreeeeaaaaddddccccdddd goes into intercative mode. Select a primary func- tion and then follow the instructions. ----vvvveeeerrrrssssiiiioooonnnn Print version information and exit. ----vvvv Increment the level of general verbosity by one. Joerg Schilling Last change: Version 1.8.1 1 READCD(1) Schily's USER COMMANDS READCD(1) ----VVVV Increment the verbose level in respect of SCSI command transport by one. This helps to debug problems during the writing process, that occur in the drive. If you get incomprehensible error messages you should use this flag to get more detailed output. ----VVVVVVVV will show data buffer content in addition. Using ----VVVV or ----VVVVVVVV slows down the process and may be the reason for a buffer under- run. ----wwww Switch to write mode. If this option is not present, rrrreeeeaaaaddddccccdddd reads from the specified device. sssseeeeccccttttoooorrrrssss====_r_a_n_g_e Specify a sector range that should be read. The range is specified by the starting sector number, a minus sign and the ending sector number. EEEEXXXXAAAAMMMMPPPPLLLLEEEESSSS For all examples below, it will be assumed that the drive is connected to the primary SCSI bus of the machine. The SCSI target id is set to 2. To read the complete media from a CD-ROM writing the data to the file _c_d_i_m_a_g_e._r_a_w: readcd dev=2,0 f=cdimage.raw To read sectors from range 150 ... 10000 from a CD-ROM writ- ing the data to the file _c_d_i_m_a_g_e._r_a_w: readcd dev=2,0 sectors=150-10000 f=cdimage.raw To write the data from the file _c_d_i_m_a_g_e._r_a_w (e.g. a filesys- tem image from mmmmkkkkiiiissssooooffffssss) to a DVD-RAM, call: readcd dev=2,0 -w f=cdimage.raw FFFFIIIILLLLEEEESSSS SSSSEEEEEEEE AAAALLLLSSSSOOOO ccccddddrrrreeeeccccoooorrrrdddd(1), mmmmkkkkiiiissssooooffffssss(1), ssssccccgggg(7), ffffbbbbkkkk(7). NNNNOOOOTTTTEEEESSSS If you don't want to allow users to become root on your sys- tem, rrrreeeeaaaaddddccccdddd may safely be installed suid root. This allows all users or a group of users with no root privileges to use rrrreeeeaaaaddddccccdddd.... RRRReeeeaaaaddddccccdddd in this case will only allow access to CD-ROM type drives- To give all user access to use rrrreeeeaaaaddddccccdddd,,,, enter: Joerg Schilling Last change: Version 1.8.1 2 READCD(1) Schily's USER COMMANDS READCD(1) chown root /usr/local/bin/readcd chmod 4711 /usr/local/bin/readcd To give a restricted group of users access to rrrreeeeaaaaddddccccdddd enter: chown root /usr/local/bin/readcd chgrp cdburners /usr/local/bin/readcd chmod 4710 /usr/local/bin/readcd and add a group _c_d_b_u_r_n_e_r_s on your system. Never give write permissions for non root users to the /_d_e_v/_s_c_g? devices unless you would allow anybody to read/write/format all your disks. You should not connect old drives that do not support disconnect/reconnect to either the SCSI bus that is con- nected to the CD-Recorder or the source disk. When using rrrreeeeaaaaddddccccdddd with the broken LLLLiiiinnnnuuuuxxxx SSSSCCCCSSSSIIII ggggeeeennnneeeerrrriiiicccc ddddrrrriiiivvvveeeerrrr.... You should note that rrrreeeeaaaaddddccccdddd uses a hack, that tries to emu- late the functionality of the scg driver. Unfortunately, the sg driver on LLLLiiiinnnnuuuuxxxx has several severe bugs: +o It cannot see if a SCSI command could not be sent at all. +o It cannot get the SCSI status byte. RRRReeeeaaaaddddccccdddd for that reason cannot report failing SCSI commands in some situations. +o It cannot get real DMA count of transfer. RRRReeeeaaaaddddccccdddd can- not tell you if there is an DMA residual count. +o It cannot get number of bytes valid in auto sense data. RRRReeeeaaaaddddccccdddd cannot tell you if device transfers no sense data at all. +o It fetches to few data in auto request sense (CCS/SCSI-2/SCSI-3 needs >= 18). DDDDIIIIAAAAGGGGNNNNOOOOSSSSTTTTIIIICCCCSSSS A typical error message for a SCSI command looks like: readcd: I/O error. test unit ready: scsi sendcmd: no error CDB: 00 20 00 00 00 00 status: 0x2 (CHECK CONDITION) Sense Bytes: 70 00 05 00 00 00 00 0A 00 00 00 00 25 00 00 00 00 00 Sense Key: 0x5 Illegal Request, Segment 0 Sense Code: 0x25 Qual 0x00 (logical unit not supported) Fru 0x0 Sense flags: Blk 0 (not valid) Joerg Schilling Last change: Version 1.8.1 3 READCD(1) Schily's USER COMMANDS READCD(1) The first line gives information about the transport of the command. The text after the first colon gives the error text for the system call from the view of the kernel. It usually is: IIII////OOOO eeeerrrrrrrroooorrrr unless other problems happen. The next words contain a short description for the SCSI command that fails. The rest of the line tells you if there were any problems for the transport of the command over the SCSI bus. ffffaaaattttaaaallll eeeerrrrrrrroooorrrr means that it was not possible to transport the command (i.e. no device present at the requested SCSI address). The second line prints the SCSI command descriptor block for the failed command. The third line gives information on the SCSI status code returned by the command, if the transport of the command succeeds. This is error information from the SCSI device. The fourth line is a hex dump of the auto request sense information for the command. The fifth line is the error text for the sense key if avail- able, followed by the segment number that is only valid if the command was a _c_o_p_y command. If the error message is not directly related to the current command, the text _d_e_f_e_r_r_e_d _e_r_r_o_r is appended. The sixth line is the error text for the sense code and the sense qualifier if available. If the type of the device is known, the sense data is decoded from tables in _s_c_s_i_e_r_r_s._c . The text is followed by the error value for a field replace- able unit. The seventh line prints the block number that is related to the failed command and text for several error flags. The block number may not be valid. BBBBUUUUGGGGSSSS CCCCRRRREEEEDDDDIIIITTTTSSSS MMMMAAAAIIIILLLLIIIINNNNGGGG LLLLIIIISSSSTTTTSSSS If you want to actively take part on the development of cdrecord, you may join the cdwriting mailing list by sending mail to: other-cdwrite-request@lists.debian.org and include the word _s_u_b_s_c_r_i_b_e in the body. The mail address of the list is: cdwrite@lists.debian.org Joerg Schilling Last change: Version 1.8.1 4 READCD(1) Schily's USER COMMANDS READCD(1) AAAAUUUUTTTTHHHHOOOORRRR Joerg Schilling Seestr. 110 D-13353 Berlin Germany Additional information can be found on: http://www.fokus.gmd.de/usr/schilling/cdrecord.html Mail bugs and suggestions to: jjjjooooeeeerrrrgggg@@@@sssscccchhhhiiiillllyyyy....iiiissssddddnnnn....ccccssss....ttttuuuu----bbbbeeeerrrrlllliiiinnnn....ddddeeee or jjjjssss@@@@ccccssss....ttttuuuu----bbbbeeeerrrrlllliiiinnnn....ddddeeee or sssscccchhhhiiiilllllllliiiinnnngggg@@@@ffffooookkkkuuuussss....ggggmmmmdddd....ddddeeee Joerg Schilling Last change: Version 1.8.1 5